package com.train.system.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.train.common.resp.PageResp;
import com.train.system.bo.TrainCarriageBO;
import com.train.system.dto.carriage.TrainCarriageAddOrEditDTO;
import com.train.system.dto.carriage.TrainCarriageDTO;
import com.train.system.dto.carriage.TrainCarriagePageDTO;
import com.train.system.po.TrainCarriagePO;
import com.train.system.resp.carriage.TrainCarriageDetailResp;
import com.train.system.resp.carriage.TrainCarriageListResp;
import com.train.system.resp.carriage.TrainCarriagePageResp;

import java.util.List;

/**
 * @author baitiaojun
 * @description 针对表【trainCarriage(火车车厢)】的数据库操作Service
 * @createDate 2025-02-20 18:52:37
 */
public interface TrainCarriageService extends IService<TrainCarriagePO> {

    void addOrEditTrainCarriage(TrainCarriageAddOrEditDTO trainCarriageAddOrEditDTO);

    PageResp<TrainCarriagePageResp> pageList(TrainCarriagePageDTO trainCarriagePageDTO);

    void remove(Long id);

    List<TrainCarriageBO> getTrainCarriageList(String trainCode);

    TrainCarriageDetailResp getOne(TrainCarriageDTO trainCarriageDTO);

    List<TrainCarriageListResp> getTrainCarriageListByTrainCodes(List<String> trainCodes);
}
